docs(warehouse-native): document Fully & Hybrid modes and Data Sources (FT-2068) - #280
Conversation
…s (FT-2068) Add a Warehouse Native Modes page explaining Hybrid (managed ClickHouse stays the default data source) vs Fully (customer warehouse is the default), centered on the rule that exposures come only from the default data source — so exposure-side robot/scraper filtering and external attribute enrichment require Fully mode. Update the overview and get-started pages to introduce the two modes, explain the default data source concept, scope table mapping to default vs external data sources, and add a conditional Step 4 for the Hybrid exposures-import (Parquet) bridge. Add a Data Sources list screenshot showing the Default badge.
✅ Deploy Preview for absmartly-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
WalkthroughThe PR adds Warehouse Native mode documentation, updates overview and setup guidance, documents default data source behaviour and Hybrid exposure imports, and adds ignore rules for local worktrees and scratch outputs. Estimated code review effort: 3 (Moderate) | ~20 minutes Possibly related PRs
Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/web-console-docs/warehouse-native/get-started.mdx`:
- Around line 200-201: Update the “Object store URL” table row to include the
accepted object-store URL scheme examples for ClickHouse and Databricks,
alongside the existing BigQuery, Redshift, and Snowflake entries, so all
supported warehouses are covered.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: ddd1b333-fab5-4937-b105-29a97c5c4259
⛔ Files ignored due to path filters (1)
static/img/warehouse-native/datasources-list.pngis excluded by!**/*.png
📒 Files selected for processing (4)
.gitignoredocs/web-console-docs/warehouse-native/get-started.mdxdocs/web-console-docs/warehouse-native/modes.mdxdocs/web-console-docs/warehouse-native/overview.mdx
| | **Object store URL** | The bucket/prefix where exposures are exported. The accepted scheme depends on your warehouse (for example, `gs://` for BigQuery, `s3://` for Redshift, and `s3://`, `gs://`, or `azure://` for Snowflake). | | ||
| | **Credentials** | The access needed to write and read those objects — an access key/secret for BigQuery and ClickHouse, a stage name for Snowflake, an IAM role ARN for Redshift. Databricks needs no extra credentials. | |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Object store URL schemes omit ClickHouse and Databricks.
The Credentials row covers all five supported warehouses, but the Object store URL row only lists schemes for BigQuery, Redshift, and Snowflake. A user configuring an external ClickHouse or Databricks data source for Hybrid exposures import won't know which URL scheme to enter. Add scheme examples for the remaining two warehouses for parity.
📝 Suggested addition
| **Object store URL** | The bucket/prefix where exposures are exported. The accepted scheme depends on your warehouse (for example, `gs://` for BigQuery, `s3://` for Redshift, `s3://`, `gs://`, or `azure://` for Snowflake, `s3://` or `gs://` for ClickHouse, and `s3://`, `gs://`, or `azure://` for Databricks). |📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| | **Object store URL** | The bucket/prefix where exposures are exported. The accepted scheme depends on your warehouse (for example, `gs://` for BigQuery, `s3://` for Redshift, and `s3://`, `gs://`, or `azure://` for Snowflake). | | |
| | **Credentials** | The access needed to write and read those objects — an access key/secret for BigQuery and ClickHouse, a stage name for Snowflake, an IAM role ARN for Redshift. Databricks needs no extra credentials. | | |
| | **Object store URL** | The bucket/prefix where exposures are exported. The accepted scheme depends on your warehouse (for example, `gs://` for BigQuery, `s3://` for Redshift, `s3://`, `gs://`, or `azure://` for Snowflake, `s3://` or `gs://` for ClickHouse, and `s3://`, `gs://`, or `azure://` for Databricks). | | |
| | **Credentials** | The access needed to write and read those objects — an access key/secret for BigQuery and ClickHouse, a stage name for Snowflake, an IAM role ARN for Redshift. Databricks needs no extra credentials. | |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/web-console-docs/warehouse-native/get-started.mdx` around lines 200 -
201, Update the “Object store URL” table row to include the accepted
object-store URL scheme examples for ClickHouse and Databricks, alongside the
existing BigQuery, Redshift, and Snowflake entries, so all supported warehouses
are covered.
…2068) In Hybrid mode, goals are assigned a data source per goal — they can come from an external warehouse OR from ABsmartly's managed ClickHouse, and customers can mix both. Previous wording implied all goals/metrics are computed against the external warehouse.
A goal *can* live in an external warehouse in Hybrid mode — it isn't required. Exposures wording is unchanged (they always come from the default data source).
…posures import (FT-2068) Describe the Exposures import object store in user-facing terms (a storage location you provide that your warehouse reads from) rather than exposing the internal Parquet export/import mechanism.
Summary
Documents the two Warehouse Native operating modes now supported in ABsmartly — Hybrid and Fully — and rounds out the Data Sources configuration docs. JIRA: FT-2068.
The two modes are framed around one rule that drives everything: exposures come only from the default data source.
Changes
warehouse-native/modes.mdx— Hybrid vs Fully, the default-data-source concept, a comparison table, and when-to-choose guidance.overview.mdx— introduces the two modes and links to the new page.get-started.mdx— adds the default-data-source note to Step 1, scopes table mapping to default vs external sources in Step 2, and adds a conditional Step 4 documenting the Hybrid exposures-import (Parquet) bridge.static/img/warehouse-native/datasources-list.png— the Data Sources list showing the managed ClickHouse marked Default alongside an external BigQuery source (illustrates the Hybrid setup)..gitignore— ignore/.worktreesand local dev/screenshot scratch.Screenshot — Data Sources list (new)
The managed ClickHouse holds the Default badge (protected actions greyed out); an external BigQuery data source sits alongside it — the Hybrid pattern.
Verification
gcs://, but the app'sDataSourceForm.tsxusesgs://— docs match the code). Clean re-review afterward (0 findings).cytoscape/mermaid build error is unrelated to these pages.)Notes for reviewers
dataSourceIdoverride (no confirmed UI) is intentionally left out.Summary by CodeRabbit
.gitignoreto ignore additional local development output directories (/worktrees,/playwright-shots,/docs/superpowers).